Computers and other devices are commonly interconnected to facilitate communication among one another using any one of a number of available standard network architectures and any one of several corresponding and compatible network protocols. Packet switched network protocols are commonly employed with a number of architectures such as the Ethernet® standard. One of the most basic and widely implemented network types is the local area network (LAN). In its simplest form, a LAN is a number of devices (e.g. computers, printers and other specialized peripherals) connected to one another over a common broadcast domain using some form of signal transmission medium such as coaxial cable. Multiple physical LANs may be coupled together as two or more sub-networks of a more complex network via routers or equivalent devices, each of the LANs having a distinct broadcast domain.
Computers and other network devices employ network resources as a requisite physical interface with which to communicate with one another over a network such as a LAN. These network resources are sometimes referred to as network adapters or network interface cards (NICs). An adapter or NIC typically has at least one port through which a physical link or coupling may be provided between the processing resources of the network device within which it is deployed and the transmission medium of the network. Data is formatted and framed for transmission through the adapter port(s) of a transmitting network device and then received and deformatted by the adapter port(s) of the receiving network device. Network adapters or NICs are commercially available and are designed to support one or more variations of standard network architectures and known topologies, including Ethernet as described above.
In an Ethernet environment for example, each network device and its physical links to the network established through its network adapter ports are identified by the other devices on the network through protocol addresses (e.g. Internet Protocol (IP)) and media access control (MAC) addresses. The protocol addresses are said to be at layer 3, and the MAC addresses at layer 2, of the OSI (Open Systems Interconnection) basic reference networking model respectively. A protocol address at layer 3 is uniquely associated with a virtual interface established by software between each of a device's adapter port drivers and the protocol layer executed by its operating system (OS). The MAC address at layer 2 is used to uniquely identify each of a device's adapter ports is typically hard-programmed into each adapter or NIC at the time of its manufacture. Provision is typically made for this pre-assigned MAC address to be overwritten through software command.
Thus, the layer 3 protocol address is associated with the software side, and the layer 2 MAC address is associated with the hardware side, of a network device's link to the network. Devices coupled to a common broadcast domain of an Ethernet network, for example, identify each other by their MAC addresses. Network devices coupled to disparate broadcast domains communicate using their IP addresses through a device such as a router that couples or bridges the two distinct broadcast domains.
To improve the reliability of a network, redundant links have been established between a network device and a network through multiple adapter ports in the event that one of the links fails. Such redundant links have also been teamed to behave as a single virtual link to increase throughput of the virtual link by aggregating the combined throughput of the redundant links. Teams of network resources use a teaming driver to present a single interface to the protocol layer for the entire team of adapter ports, rather than one for each individual adapter or adapter port. This team interface is then assigned a team protocol address that identifies the virtual team interface. The teaming driver also presents a single driver interface to the network such that all teamed ports appear to the network to be a single virtual port having one MAC address assigned thereto. Such teams of resources have been implemented with various network redundancy schemes to optimize the configuration of the team for changing network conditions and/or to detect loss of connectivity in paths of the network to which members of the team are coupled.
A physical network can be further expanded by superimposing two or more virtual networks over the same physical network. Each of the virtual networks is logically distinct from the others and can therefore be isolated for security purposes. In the Ethernet context, for example, these logical networks are known as virtual LANs (VLANs). One or more VLANs may be assigned to one or more members of a physical team of adapter ports. Each VLAN is associated with its own protocol address and these VLAN protocol addresses replace the single protocol address associated with the virtual interface for the physical team. A data frame to be transmitted over a particular VLAN typically includes a VLAN tag uniquely associating that frame with that particular VLAN.
Network devices employing adapter port teaming, such as those employed as servers, typically receive input through a graphical user interface by which the available network resources of the device may be configured as one or more teams. Each team is established by the assignment of a unique subset of the available network resources. Each team is further characterized by configuration choices such as team type and the choice of available network redundancy techniques. Virtual networks such as VLANs may also be implemented using the same interface by assigning each team member to none, one or more of the desired VLANs.
Heretofore, each team member carries its physical configuration characteristics for each of the VLANs to which it is assigned. Put another way, the VLANs have been constrained to use each of the team members in the same role as they have been initially assigned during the configuration of the physical team. For example, if one of the NICs is configured as the primary for the physical team, all of the VLANs have been constrained to use this NIC as the primary NIC for those resources of the team associated with each VLAN. This may not be desirable for a number of reasons which will be apparent to those of skill in the art in view of the detailed description of the invention presented herein.